Ext.define('SistIntegral.Semovientes.Form',{

alias			: "FrmTipo1", //: "FrmTipo",
forward			: true,
        
Formulario     :   function(btn){
btn.NomComboProyecto = 'Proy Origen';
var CmbProyecto = new SistIntegral.Componentes.Objetos().ComboProyecto(btn);
var ComboCPD = new SistIntegral.Componentes.Objetos().ComboCPD();
var CmbEstadoSemoviente = new SistIntegral.Componentes.Objetos().CmbEstadoSemoviente();
var ComboCPDUbicacion = new SistIntegral.Componentes.Objetos().ComboCPDUbicacion();
var ComboOrigenSemoviente = new SistIntegral.Componentes.Objetos().ComboOrigenSemoviente();
var ComboEspecieCatRaza = new SistIntegral.Componentes.Objetos().ComboEspecieCatRaza();
var ComboSemPadreMadre = new SistIntegral.Componentes.Objetos().ComboSemPadreMadre();
var CmbPlanContable = new SistIntegral.Componentes.Objetos().CmbPlanContable();

var StrTipoE = Ext.create('Ext.data.Store', {
    model: 'Semoviente',
    proxy: {
        type: 'ajax',
        url: 'semoviente/IndexById/'+(btn.itemId == 'edit' ? btn.Seleccion.get('IdSemoviente'):''),
        reader: {type: 'json',root: 'grid'}
    }
});

StrTipoE.on('load', function (store, records) {
    Ext.getCmp('CmbEspecie').getStore().loadRecords(records); 
    Ext.getCmp('CmbEspecie').setValue(records[0].get('idespecieanimal'));
    
    Ext.getCmp('FrmPCTipo').loadRecord(records[0]);
    
    Ext.getCmp('CmbProyecto').getStore().loadRecords(records); 
    Ext.getCmp('CmbProyecto').setValue(records[0].get('IdProyecto'));

    Ext.getCmp('CmbProyectoCPD').getStore().loadRecords(records); 
    Ext.getCmp('CmbProyectoCPD').setValue(records[0].get('IdProyectoCPD'));
    
    Ext.getCmp('CmbCtaDepreciacion').getStore().loadRecords(records); 
    Ext.getCmp('CmbCtaDepreciacion').setValue(records[0].get('IdPlanContable'));
    
    Ext.getCmp('CmbOrigenSemoviente').getStore().loadRecords(records); 
    Ext.getCmp('CmbOrigenSemoviente').setValue(records[0].get('IdOrigenSemoviente'));
    
    
    Ext.getCmp('CmbRaza').getStore().loadRecords(records); 
    Ext.getCmp('CmbRaza').setValue(records[0].get('idrazaanimal'));
    
    Ext.getCmp('CmbCategoria').getStore().loadRecords(records); 
    Ext.getCmp('CmbCategoria').setValue(records[0].get('idcategoriaanimal'));
    
    Ext.getCmp('CmbCPDUbicacion').getStore().loadRecords(records); 
    Ext.getCmp('CmbCPDUbicacion').setValue(records[0].get('IdProyectoCPDU'));
    
    Ext.getCmp('CmbPadre').getStore().loadRecords(records); 
    Ext.getCmp('CmbPadre').setValue(records[0].get('IdSemovientePadre'));
    
    Ext.getCmp('CmbMadre').getStore().loadRecords(records); 
    Ext.getCmp('CmbMadre').setValue(records[0].get('IdSemovienteMadre'));
    
    Ext.getCmp('CmbEstadoSemoviente').getStore().loadRecords(records); 
    Ext.getCmp('CmbEstadoSemoviente').setValue(records[0].get('IdEstadoSemoviente'));    
    
});

var Frm =  Ext.create('Ext.form.Panel', {
    id:'FrmPCTipo',
    //cls: 'x-check-group-alt',
    //frame:true,
    bodyStyle: 'background-color: rgba(251, 252, 252, 0);',
    bodyPadding:'5',
    fieldDefaults: {
        msgTarget: 'side',
        labelAlign: 'right',
        labelWidth: 90,
        anchor: '100%'
    },
    items: [{
            xtype: 'container',
            anchor: '100%',
            layout: 'hbox',
            padding:'0 0 5 0',
            items: [CmbProyecto,ComboCPD]
        },{
            xtype: 'container',
            anchor: '100%',
            layout: 'hbox',
            padding:'0 0 5 0',
            items: [CmbPlanContable,{
                xtype:'textfield',
                fieldLabel: 'Arete Microchip',
                name: 'AreteMicrochip',
                //allowBlank: false,
                flex:1
            }]
        },{
            xtype: 'container',
            anchor: '100%',
            layout: 'hbox',
            padding:'0 0 5 0',
            items: [{
                xtype:'textfield',
                fieldLabel: 'Arete Establo',
                name: 'AreteEstablo',
                allowBlank: false,
                flex:1
            }, {
                xtype:'textfield',
                fieldLabel: 'Nombre',
                name: 'Nombre',
                allowBlank: false,
                flex:1,
                padding:'0 0 0 5'
            }]
        },{
            xtype: 'container',
            anchor: '100%',
            layout: 'hbox',
            padding:'0 0 5 0',
            items: [{
                xtype:'datefield',
                fieldLabel: 'Fec Nac',
                name: 'FechaNacimiento',
                //allowBlank: true,
                flex:1
            }, {
                xtype:'numberfield',
                fieldLabel: 'Edad (Meses)',
                name: 'EdadMeses',
                allowBlank: false,
                flex:1,
                padding:'0 0 0 5'
            }]
        },{xtype: 'container',
            anchor: '100%',
            layout: 'hbox',
            padding:'0 0 5 0',
            items: [{
            xtype: 'radiogroup',
            fieldLabel: 'Sexo',
            flex:1,
            columns: 2,
            items: [
                {boxLabel: 'Macho', name: 'Sexo', inputValue: 'M'},
                {boxLabel: 'Hembra', name: 'Sexo', inputValue: 'H', checked: true}
            ]
        },{
            xtype: 'radiogroup',
            fieldLabel: 'Ingreso',
            columns: 2,
            flex:1,
            items: [
                {boxLabel: 'Nacimiento', name: 'TipoIngreso', inputValue: 1},
                {boxLabel: 'Externo', name: 'TipoIngreso', inputValue: 2, checked: true,id : 'radioExterno'}
            ]
        }]},ComboOrigenSemoviente,ComboEspecieCatRaza,{
            xtype: 'textarea',
            name: 'DescSemoviente',
            grow:true,
            fieldLabel: 'Descripcion',
            allowBlank: false,
            anchor:'100%'
        },{
            xtype: 'container',
            anchor: '100%',
            layout: 'hbox',
            padding:'0 0 5 0',
            items: [{
                xtype:'numberfield',
                fieldLabel: 'Peso',
                name: 'Peso',
                allowBlank: false,
                width:'49%'
            }, {
                xtype:'numberfield',
                fieldLabel: 'Valor',
                name: 'Valor',
                allowBlank: false,
                width:'49%',
                padding:'0 0 0 5'
            }]
        },ComboCPDUbicacion,ComboSemPadreMadre,{
            xtype: 'container',
            anchor: '100%',
            layout: 'hbox',
            padding:'0 0 5 0',
            items: [{
        xtype: 'filefield',
        name: 'FotoFrente',
        fieldLabel: 'Foto Frente',
        msgTarget: 'side',
        allowBlank: true,
        flex:1,
        vtype: 'imagen',
        //anchor: '100%',
        buttonText: '',
        buttonConfig: {
                    iconCls: 'subirimagen'
                }
    }, {
        xtype: 'filefield',
        name: 'FotoPerfil',
        fieldLabel: 'Foto Perfil',
        msgTarget: 'side',
        allowBlank: true,
        flex:1,
        vtype: 'imagen',
        //anchor: '100%',
        buttonText: '',
        buttonConfig: {
                    iconCls: 'subirimagen'
                }
    }]
        },{
            xtype: 'container',
            anchor: '100%',
            layout: 'hbox',
            padding:'0 0 5 0',
            items: [CmbEstadoSemoviente, {
        xtype: 'filefield',
        name: 'Certificado',
        fieldLabel: 'Certificado',
        msgTarget: 'side',
        allowBlank: true,
        flex:1,
        vtype: 'pdf',
        //anchor: '100%',
        buttonText: '',
        buttonConfig: {
                    iconCls: 'subirarchivo'
                }
    }]
        }
        ],
    buttons: [{
        text: 'Guardar',
        iconCls:'guardar',
        handler: function(){
            var form = this.up('form').getForm();
            if (form.isValid()) {
            
            Ext.MessageBox.show({
               msg: ' Creado Registro ...',
               progressText: 'Actualizando...',
               width:300,
               icon:'ext-mb-download'
           });
                       
            form.submit({
                url: btn.hrefTarget+(btn.itemId == 'edit' ? btn.Seleccion.get('IdSemoviente'):''),
                success: function(form, action) {

                    Ext.getCmp('GridSemoviente').getStore().load();     
                    Ext.getCmp('WSemoviente').close();
                    
                        setTimeout(function(){
                            Ext.MessageBox.hide();
                        }, 1000); 
                },
                failure: function(form, action) {
                    setTimeout(function(){
                            Ext.MessageBox.hide();
                        }, 1000);
                }
            });
            }
        }
    },{
        text: 'Limpiar',
        iconCls:'limpiar',
        handler: function(){
            this.up('form').getForm().reset();
        }
    }]
});

Ext.getCmp('radioExterno').on('change', function (store,newValue) {
    if (newValue == true){
        Ext.getCmp('CmbOrigenSemoviente').setDisabled(false);
    }
    else{
        Ext.getCmp('CmbOrigenSemoviente').clearValue();
        Ext.getCmp('CmbOrigenSemoviente').setDisabled(true);
    }
});
    if(btn.itemId == 'edit'){
        StrTipoE.load();
    }
    return Frm;
},        
        
Window      :   function(btn){

    var Seleccion;
    if(btn.itemId == 'edit'){
        Seleccion = Ext.getCmp('GridSemoviente').getSelectionModel().getSelection()[0];
        if(!Seleccion){ 
        Ext.Msg.show({
            title: 'Advertencia',
            msg: 'Seleccione Semoviente a Editar',
            icon: Ext.MessageBox.WARNING,
            buttons: Ext.Msg.OK
        });
        return false;
        }
        else{
            //if(Seleccion.get('Vigente') == 'true')
            { btn.Seleccion = Seleccion}
//            else{
//                Ext.Msg.show({
//                    title: 'Advertencia',
//                    msg: 'Estado No Valido Para Editar',
//                    icon: Ext.MessageBox.WARNING,
//                    buttons: Ext.Msg.OK
//                });
//                return false;
//            }
           }
    }
    
    var Item = this.Formulario(btn);

    var win = Ext.create('widget.window', {
    id:'WSemoviente',
    title: btn.getText()+' Semoviente',
    closable: true,
    //bodyPadding:'5',
    border:false,
    width: 720,
    minWidth: 720,
    height: 500,
    minHeight:500,
    layout:'fit',
    modal: true,
    items: [Item]
    });

    return win.show();
}//,
//Editar      :   function(btn){
//    
//    //alert("edit");
//    //var Item = this.Formulario(btn);
////    btn.NomComboProyecto = 'Proy Origen';
////    var CmbProyecto = new SistIntegral.Componentes.Objetos().ComboProyecto(btn);
////    var ComboCPD = new SistIntegral.Componentes.Objetos().ComboCPD();
////    //var CmbEstadoSemoviente = new SistIntegral.Componentes.Objetos().CmbEstadoSemoviente();
////    //var ComboCPDUbicacion = new SistIntegral.Componentes.Objetos().ComboCPDUbicacion();
////    var ComboOrigenSemoviente = new SistIntegral.Componentes.Objetos().ComboOrigenSemoviente();
////    //var ComboEspecieRaza = new SistIntegral.Componentes.Objetos().ComboEspecieRaza();
////    var ComboSemPadreMadre = new SistIntegral.Componentes.Objetos().ComboSemPadreMadre();
//
//    var win = Ext.create('widget.window', {
//    id:'WEditSemoviente',
//    title: btn.getText()+' Semoviente',
//    closable: true,
//    //bodyPadding:'5',
//    border:false,
//    width: 720,
//    minWidth: 720,
//    height: 500,
//    minHeight:500,
//    layout:'fit',
//    modal: true
//    //,items: [Item]
//    });
//
//    return win.show();
//}
});